package com.fkcai.hansoul.common.util;

import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;

/**
 * 该类用于密码加密，
 * 采用 bcrypt 加密密码。
 * 是一种专门为密码加密设计的算法，它具有可变的计算成本，使得密码破解困难。
 */
public class PasswordUtil {
	
	private static final BCryptPasswordEncoder PASSWORD_ENCODER = new BCryptPasswordEncoder();
	
	// 使用 bcrypt 进行密码加密
	public static String encryptPassword(String password) {
		return PASSWORD_ENCODER.encode(password);
	}
	
	// 验证密码
	public static boolean checkPassword(String rawPassword, String encodePassword) {
		return PASSWORD_ENCODER.matches(rawPassword, encodePassword);
	}
}
